import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'
import Pages from 'vite-plugin-pages' // 导入 vite-plugin-pages
import Layouts from 'vite-plugin-vue-layouts'

// 导入自动导入插件
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'


// https://vite.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    Pages({
      dirs: 'src/pages', // 指定存放页面组件的目录
    }),
    Layouts(
    //   {
    //   layoutsDirs: 'src/layouts', // 布局文件目录（默认 src/layouts）
    //   pagesDirs: 'src/pages', // 页面文件目录（默认 src/pages）
    //   defaultLayout: 'default',   // 默认布局
    // }
  ),
    // 配置自动导入
    AutoImport({
      resolvers: [ElementPlusResolver()],
    }),
    Components({
      resolvers: [
        IconsResolver({
          prefix: 'icon', // 组件名前缀，<icon-mdi-home />
        }),
        ElementPlusResolver({ importStyle: 'sass' }),
        // ElementPlusResolver(),
      ],
    }),
    Icons({
      autoInstall: true, // 没有安装的图标包会自动下载
    }),
  ],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src'), // 指定src目录为别名@
    },
  },
  server: {
    port: 5518, // 可选：指定端口
    proxy: {
      '/api': {
        target: 'http://192.168.0.107:8090/api', // 你的后端服务地址
        changeOrigin: true, // 改变请求源，支持跨域
        rewrite: (path) => path.replace(/^\/api/, '') // 可选：重写路径，去掉 /api 前缀
      }
    }
  },
})
